package com.auz.datagenerator.heuristics.value;

import javax.swing.JPanel;

/**
 * Base value heuristic, does not perform any computation or modification on the base value
 * @author Aurelien Bonnel
 */
public class BaseValueHeuristic extends AbstractValueHeuristic<Double> {

	/**
	 * Constructor
	 * @param _base - the base value
	 */
	public BaseValueHeuristic(double _base) {
		super(_base);
	}

	/**
	 * Returns the value associated with this heuristic
	 * @return the value
	 */
	public Double getValue() {
		return base;
	}

	/**
	 * Returns the GUI component associated with this heuristic
	 * @return the GUI component associated with this heuristic
	 */
	public JPanel fetchGUIComponent() {
		return null;
	}

	/**
	 * Returns the value associated with the representational function associated to this heuristic
	 * @return the value associated with the representational function associated to this heuristic
	 */
	public Double getRepresentationalValue(double _x) {
		return base;
	}

	/**
	 * Sets the parameter value to the specified value
	 * @param _param - the new parameter value
	 */
	public void changeParameter(int _param) {
		base = new Double(_param);
	}

}
